/**
 * Person类用于表示一个人的基本信息
 * 包含姓名和年龄属性，以及打招呼的方法
 */
abstract class Person {
    readonly name: string; // 属性
    age: number;  // 属性
    static sex: string // 静态属性

    /**
     * 构造函数，用于创建Person实例
     * @param name 姓名
     * @param age 年龄
     */
    constructor() {
        Person.sex = "男"
    }

    // constructor(name: string, public age: number) {
    //     // this.name = name;
    //     // this.age = age;
    //     Person.sex = "男"
    // }

    /**
     * 打招呼方法，输出问候语
     */
    sayHello() {
        console.log(`大家好，我是${this.name},性别${Person.sex}`);
    }

    abstract userInfo()
}

class Student extends Person {
    userInfo(){
      //重写父类中的抽象方法
    }
    getInfo() {
        console.log(`大家好，我是${this.name},性别${Person.sex}`);
    }
}


// 创建Person对象实例
// let p = new Person("张三", 18);
// Person.age = 18
// 获取并输出对象属性
// console.log(p.name);
// console.log(p.age);
// console.log(Person.sex)
// p.name="李四"
// 调用对象方法
// p.sayHello();
